package com.whfc.emp.manager;


import com.whfc.common.enums.SyncModule;
import com.whfc.common.enums.SyncPlatform;
import com.whfc.emp.dto.AppSyncRecordDTO;
import com.whfc.emp.entity.AppSync;

import java.util.List;

/**
 * @ClasssName AppSyncManager
 * @Description 数据同步信息表
 * @Author hw
 * @Date 2021/1/5 9:13
 * @Version 1.0
 */
public interface AppSyncManager {

    /**
     * 根据项目ID和平台查找
     *
     * @param projectId
     * @param platform
     * @return
     */
    AppSync getByProjectIdAndPlatform(Integer projectId, SyncPlatform platform);


    /**
     * 增加需要同步的数据
     *
     * @param syncPlatform
     * @param syncModule
     * @param objectId
     */
    void addSyncData(SyncPlatform syncPlatform, SyncModule syncModule, Integer objectId);

    /**
     * 更新同步数据
     *
     * @param syncPlatform
     * @param syncModule
     * @param objectId
     */
    void updateSyncData(SyncPlatform syncPlatform, SyncModule syncModule, Integer objectId);

    /**
     * 查询已同步的人员
     *
     * @param objectIds
     * @param type
     * @param platform
     * @return
     */
    List<AppSyncRecordDTO> getSyncList(List<Integer> objectIds, Integer type, Integer platform);

}
